System and method for inverting automatic frequency control

ABSTRACT

A method includes a foreground process and a background process. In the foreground process, an input signal is processed using a first reference signal to generate an output. A first frequency control signal is generated from the output. A frequency of the first reference signal is controlled based on the first frequency control signal. In the background process, a foreground processed signal is received from the foreground process. The foreground processed signal is processed using a second reference signal. A second frequency control signal is generated from the foreground processed signal. A frequency of the second reference signal is controlled based on the second frequency control signal so that the background processing step removes effects of the foreground controlling step.

CROSS-REFERENCE TO RELATED APPLICATION

This is a continuation of U.S. patent application Ser. No. 11/183,681,filed Jul. 18, 2005, which is a continuation of U.S. patent applicationSer. No. 09/990,553, filed Nov. 21, 2001 (now U.S. Pat. No. 6,920,190),which claims benefit of U.S. Provisional Application No. 60/252,795,filed Nov. 21, 2000, all three applications hereby incorporated hereinby reference.

TECHNICAL FIELD

This invention relates to frequency control in a communication device.

BACKGROUND

For communication devices to be effective, it is required that areceiver and a transmitter be tuned to the same frequency. Such arequirement may seem trivial on the outset, but it is not often easilyachieved. Receivers are designed for operation within a certain band offrequencies. Receivers require reference signals to keep them in tunewith the frequencies they are to receive. Such reference signals areoften provided by a local oscillator. Since a transmitter and receiverrarely share the same local oscillator, there is often a frequencyoffset or output frequency mismatch between local oscillators whichaffects the ability of the receiver to accurately receive a signal fromthe transmitter.

The present invention addresses the problem of frequency offset.

SUMMARY

According to an aspect of the invention, a communication signal receivercomprises a foreground processing section having a foreground automaticfrequency control (AFC) loop configured to control a frequency of afirst reference signal used to process a received signal, and abackground processing section configured to control a frequency of asecond reference signal used to process an output signal of theforeground processing section, wherein the frequency of the secondreference signal is controlled so that effects of the foreground AFCloop are removed from the output signal of the foreground processingsection.

In accordance with a further aspect of the invention, a method forprocessing a communication signal comprises a foreground processcomprising the steps of: a) determining if an input communication signalis available, and if a signal is not available terminating the process,b) processing the input signal using a first reference signal, c)passing the output from step b) through a foreground AFC unit togenerate a first frequency control signal; and d) controlling afrequency of the first reference signal based on the first frequencycontrol signal, and a background process comprising the steps of: a)receiving a foreground processed signal from the foreground process; b)processing the foreground processed signal using a second referencesignal, c) passing the foreground processed signal through a backgroundAFC unit to generate a second frequency control signal, and d)controlling a frequency of the second reference signal based on thesecond frequency control signal so that the step of processing theforeground processed signal removes effects of the foreground processstep of controlling the frequency of the first reference signal from theforeground processed signal.

In another embodiment of the invention, a communication signal receivercomprises means for foreground processing including means forimplementing a foreground AFC loop configured to control a frequency ofa first reference signal used to process a received signal, and meansfor background processing, for controlling a frequency of a secondreference signal used to process an output signal of the means forforeground processing, wherein the means for background processingcontrols the frequency of the second reference signal so that effects ofthe means for implementing a foreground AFC loop are removed from theoutput signal of the means for foreground processing.

According to a still further aspect of the invention, a computerreadable medium contains instructions for implementing a method forprocessing a communication signal, the method comprising a foregroundprocess comprising the steps of: a) determining if an inputcommunication signal is available, and if a signal is not availableterminating the process, b) processing the input signal using a firstreference signal, c) passing the output from step b) through aforeground AFC unit to generate a first frequency control signal, and d)controlling a frequency of the first reference signal based on the firstfrequency control signal, and a background process comprising the stepsof: a) receiving a foreground processed signal from the foregroundprocess, b) processing the foreground processed signal using a secondreference signal, c) passing the foreground processed signal through abackground AFC unit to generate a second frequency control signal, andd) controlling a frequency of the second reference signal based on thesecond frequency control signal so that the step of processing theforeground processed signal removes effects of the foreground processstep of controlling the frequency of the first reference signal from theforeground processed signal.

In a further embodiment of the invention, a wireless communicationdevice comprises a transceiver configured to transmit and receivecommunication signals, and a digital signal processor (DSP) operativelycoupled to the transceiver, the DSP comprising computer software codefor processing a communication signal, by performing the functions of aforeground process comprising the steps of: a) determining if an inputcommunication signal is available, and if a signal is not availableterminating the process, b) processing the input signal using a firstreference signal, c) passing the output from step b) through aforeground AFC unit to generate a first frequency control signal; and d)controlling a frequency of the first reference signal based on the firstfrequency control signal, and a background process comprising the stepsof: a) receiving a foreground processed signal from the foregroundprocess, b) processing the foreground processed signal using a secondreference signal, c) passing the foreground processed signal through abackground AFC unit to generate a second frequency control signal, andd) controlling a frequency of the second reference signal based on thesecond frequency control signal so that the step of processing theforeground processed signal removes effects of the foreground processstep of controlling the frequency of the first reference signal from theforeground processed signal.

BRIEF DESCRIPTION OF THE DRAWINGS

For a better understanding of the present invention, and to show moreclearly how it can be carried into effect, reference will now be made,by way of example only, to the accompanying drawings in which:

FIG. 1 is a block diagram of a communication system;

FIG. 2 is a block diagram of a receiver;

FIG. 3 is a frequency graph illustrating signal characteristics andfilter characteristics;

FIG. 4 is a frequency graph illustrating frequency offset as applied toFIG. 3;

FIG. 5 is a block diagram of a known receiver;

FIG. 6 is a block diagram of a component of a receiver implementing thepresent invention;

FIG. 7 is a timing diagram illustrating unsynchronized mode operation ofthe background processing section;

FIG. 8 is a timing diagram illustrating synchronized mode operation ofthe background processing section;

FIG. 9 is a flowchart of the foreground processing section process; and

FIG. 10 is a flowchart of the background processing section process.

DETAILED DESCRIPTION

To aid the reader in better understanding how the present invention maybe utilized, we provide some introductory information on the functioningof a wireless communication network. Referring first to FIG. 1, a blockdiagram of a communication system is shown generally as 10. System 10comprises network 20 and mobile communication device 30, whichcommunicate via wireless link 40.

Network 20 comprises a server 21, a network controller 22, a basestation controller 23, a base station 24 and an antenna 25.

Server 21 may be any component or system connected within or to network20. For example, server 21 may be a service provider system, whichprovides wireless communication services to device 30 and stores datarequired for routing a communication signal to device 30. Server 21 mayalso be a gateway to other networks, including but in no way limited toa telephone network, a local area network, or a wide area network suchas the Internet. Those skilled in the art to which the presentapplication pertains will appreciate that although only a single server21 is shown in FIG. 1 a typical network 20 may include multiple servers21.

Network controller 22 handles routing of communication signals throughnetwork 20 to device 30. In the context of a packet switchedcommunication network, network controller 22 must determine a locationor address of a device 30 and route packets to a device 30 through oneor more routers or switches (not shown) and eventually to a base station24 serving a network coverage area in which device 30 is currentlylocated.

Base station 24, its associated controller 23 and antenna 25 providewireless network coverage for a particular coverage area commonlyreferred to as a “cell”. Base station 24 transmits communication signalsto and receives communication signals from mobile devices 30 within itscell via antenna 25. Base station 24 normally performs such functions asmodulation and possibly encoding and/or encryption of signals to betransmitted to a device 30 in accordance with communication protocolsand parameters, under the control of base station controller 23. Basestation 24 similarly demodulates and possibly decodes and decrypts ifnecessary any communication signals received from a device 30 within itscell. Communication protocols and parameters may vary between differentnetworks 20. For example, one network may employ a different modulationscheme and operate at different frequencies than other networks 20.

An actual wireless network 20 such as the Mobitex™ network or DataTAC™network for example may include a plurality of cells, each served by adistinct base station controller 23, and base station 24. Base stationcontrollers 23 and base stations 24 may be connected by multipleswitches and routers (not shown), and controlled by multiple networkcontrollers 22, only one of which is shown in FIG. 1. Similarly, network20 may also include a plurality of servers 21, including for examplestorage, routing, processing and gateway components.

Mobile device 30 typically has a display 31, a keyboard 32, and possiblyone or more auxiliary user interfaces (UI) 33, connected to a controller34, which in turn is connected to a radio modem 35 and an antenna 36.

Mobile device 30 sends communication signals to and receivescommunication signals from network 20 over wireless link 40 via antenna36. Radio modem 35 performs functions similar to those of base station24, including for example modulation/demodulation. Radio modem 35 mayalso provide encoding/decoding and encryption/decryption.

In most modern communication devices 30, controller 34 is a centralprocessing unit (CPU) running operating system software which is storedin a device memory component (not shown). Controller 34 controls overalloperation of device 30, whereas signal processing operations associatedwith communication functions are typically performed in modem 35.Controller 34 interfaces with display 31 to display receivedinformation, stored information, user inputs and the like. Keyboard 32,which may be a telephone type keypad or full alphanumeric keyboard, mayalso utilize auxiliary user interface components 33. Keyboard 32 isnormally provided on mobile communication devices for entering data forstorage on device 30, information for transmission from device 30 tonetwork 20, a telephone number to place a call from device 30, commandsto be executed on device 30, and possibly other or different userinputs.

Device 30 may consist of a single unit, such as a data communicationdevice, a cellular telephone, a multiple-function communication devicewith data and voice communication capabilities for example, a personaldigital assistant (PDA) enabled for wireless communication, or acomputer incorporating an internal modem. Device 30 may also be amultiple-module unit, comprising a plurality of separate components,including but in no way limited to a computer or other device connectedto a wireless modem. For example, modem 35 and antenna 36 may beimplemented as a radio modem unit that may be inserted into a port on alaptop computer. Although only a single device 30 is shown in FIG. 1, itwill be obvious to those skilled in the art to which this applicationpertains that many devices 30, including different types of devices 30,may be active or operable within a wireless communication network 20 atany time.

Referring now to FIG. 2, a block diagram of receiver is shown generallyas 50. Receiver 50 is contained within radio modem 35. FIG. 2illustrates a very general receiver 50 and is intended only as a basicillustration. A signal received by antenna 36 is filtered by filterstage 52 to separate a signal at a particular desired frequency fromother components of the signal received by antenna 36. Gain stage 54amplifies the signal selected by filter stage 52. Receiver processingblock 56 may include such functions as demodulation, decoding andfurther signal processing. Various control signals for filter stage 52and gain stage 54 can be generated by processing block 56 and suppliedas input to filter stage 52 via control path 58 and to gain stage 54 viacontrol path 60.

Receiver 50 is a very general receiver structure and is intended only asan illustrative example thereof. The implementation of this generalstructure will vary considerably, depending upon the particular receiverapplication and manufacturer. For example, different receivers mayobviously operate in different frequency bands and detect differentchannels, leading to differences in filter design. Differentmanufacturers may also use different components to realize the variousreceiver circuits.

Referring now to FIG. 3 a frequency graph illustrating signalcharacteristics and filter characteristics is shown generally as 70. Awaveform 72 represents an arbitrary signal sent on a channel having acentre frequency 74. Ideally, a receiver 50 would be able to filtersignal 72 with a band pass filter having a band pass characteristic 76centred at frequency 74.

Referring now to FIG. 4, a frequency graph illustrating frequency offsetas applied to FIG. 3, is shown generally as 80. Any frequency offsetbetween a transmitter and a receiver will affect receiver filtering.Frequency 82 is the result of a frequency offset between referencesignals produced by oscillators at the transmitter and the receiver.Frequency offset effectively renders a receiver incapable of accuratelycentring a required filter at the frequency 74. As a result, thereceiver filtering operation filters out part of the desired signal 72,designated by shaded area 84, and recovers additional noise from atransmission signal on an adjacent channel, shown in FIG. 4 as shadedarea 86. Therefore, frequency offset both reduces the received signalpower for a desired signal and increases noise in the filtered signal.The overall effect on the signal to noise ratio (SNR) of a receivedsignal can be significant. Since receiver operation quickly degrades fordecreasing SNR, frequency offset should be minimized. In practicalsystems, communication channel frequencies would be separatedsufficiently to ensure that signals are spaced farther apart than shownin FIG. 4. The desired and adjacent channel characteristics haveintentionally been crowded in FIG. 4 for illustrative purposes.

Before discussing the present invention and how it addresses the problemof frequency offset and conventional AFC, we will first discuss a knownreceiver in detail as shown in FIG. 5. Referring now to FIG. 5, a blockdiagram of a receiver is shown generally as 90. FIG. 5 illustrates indetail an implementation of a receiver 50 of FIG. 2.

A signal received from antenna 36 is filtered by frequency band filter92. Down converter stage 94 converts the filtered signal from filter 92,typically an RF signal, to intermediate frequency (IF), creating a downconverted signal, which is passed to IF channel filter 96. IF channelfilter 96 filters the down converted signal to select a particular IFchannel in the down converted signal. The output from IF channel filter96 is then passed to gain stage 98, which may amplify the signal on thedesired channel under the control of a gain control system (not shown).

A quadrature mixer 102 separates the in-phase (I) and quadrature (Q)components of the received signal. Low pass filter 104 filters out aliassignals from the Q output of mixer 102 and limits the input bandwidthsampled by the analog to digital converter (ADC) 108. Filter 106provides the same function for the I output of mixer 102 and isconnected to ADC 110. ADCs 108 and 110 are often used in communicationsignal receivers such as receiver 90, since many receivers performsignal processing functions in the digital domain.

Digital outputs from ADCs 108 and 110 are input to a digital signalprocessor (DSP) 112, via an m-bit bus for example. One function of DSP112 is to generate automatic frequency control (AFC) signals thatcontrol the local oscillator (LO) and frequency synthesizers designatedgenerally as block 132. In receiver 90, the I and Q components from ADCs108 and 110 are input to channel filter 116 of DSP 112. The output fromfilter 116 is input to a frequency offset estimator 118, which estimatesa frequency offset between a LO at receiver 90 and an oscillator at atransmitter from which a received signal is received. The estimatedoffset is then input to an AFC control unit 120. In accordance with anAFC algorithm, the AFC control unit 120 determines an appropriate AFCcontrol signal. The AFC control signal, a p-bit digital signal in theexample receiver in FIG. 5, is input to an AFC unit 134 which in turncontrols the frequency synthesizers 132 to correct for the estimatedfrequency offset. Since DSP 112 is a digital component and frequencysynthesizers 132 typically use analog control signals, a digital toanalog converter (DAC) 136 is required. If the receiver 90 includesdigital frequency synthesizers however, the DAC 136 in receiver 90 wouldnot be necessary.

In addition to the frequency control function discussed above, DSP 112may also perform other functions. For example, DSP 112 may include aframe synchronization (sync) detector 122, which detects a unique framesynchronization pattern or signal that is periodically inserted in atransmitted signal to maintain synchronization between a transmitter andreceiver. It will be apparent to those skilled in the art to which thepresent application pertains that in the Mobitex™ wireless communicationsystem for example, the maximum length of a transmitted frame is about 1second, so a Mobitex receiver should receive a frame sync pattern atleast once every second. Frame sync detector 122 outputs synchronizationinformation 124 that may be used by receiver components to process asignal received by receiver 90. For example, the DSP 112 may alsoinclude a down converter 126 and a detector or demodulator 128 which mayuse synchronization information provided by a frame sync detector 122.Down converter 126 converts the output signal from channel filter 116 toa lower frequency to facilitate further digital processing of thefiltered digital signal from the channel filter 116. Detector 128demodulates the down converted signal in accordance with a modulationscheme used in the communication system in which the receiver operates.In the above example Mobitex system, the modulation scheme is GaussianMinimum Shift Keying (GMSK). However, the present invention is in no waylimited thereto. Other modulation schemes will be apparent to thoseskilled in the art and are therefore considered to be within the scopeof the invention.

The demodulated signal 130 from detector 128 can then be furtherprocessed by other components of the receiver 90. These other receivercomponents may include further DSP components, and/or components thatare not implemented as part of the DSP 112. Although these otherreceiver components will differ for different receivers, many receiversinclude components to perform one or more of the operations ofdescrambling, deinterleaving, decoding, decryption, error checking anderror correction. In addition, a microprocessor or software applicationin a communication device in which the receiver 90 is implemented mayprocess data in a received signal.

Communication devices including a receiver such as receiver 90 aredesigned for operation within a certain band of frequencies. A mobiledevice which operates on the Mobitex mobile communication systemreceives signals in a RF band of 935 Hz to 941 MHz. In a Mobitexreceiver, RF band filter 92 would be a band pass filter centred withinthis RF band. Internal operations within a communication device may alsobe performed at further different frequencies. In receiver 90, filters96 and 116 are band pass filters, but operate at different frequenciesand have different bandwidths than RF band filter 92.

Typical receivers such as receiver 90 require reference frequency orclock signals, which are normally generated within the receiver. In theexample receiver 90, LO and frequency synthesizers 132 generate threereference frequencies, fref1 (140), fref2 (142) and fref3 (144).Reference frequency fref1 140 is supplied to down converter 94, fref2142 is supplied to quadrature mixer 102 and fref3 146 may be supplied toother receiver modules. For example, fref3 144 may be supplied to downconverter 126, to other modules in DSP 112 or receiver 90, or even tomodules in a transmitter (not shown) implemented in the samecommunication device as receiver 90.

The effective operation of a communication device is highly dependentupon the accuracy of the synthesized reference frequencies and thus uponthe LO. In most communication systems, a signal transmitted by acommunication device is intended for reception by a differentcommunication device. Since communication devices rarely share the sameLO for their respective frequency synthesis operations, there istypically a frequency offset, or output frequency mismatch, between LOswhich significantly affects communication signal reception. The aboveexample Mobitex mobile communication system includes thousands of basestations and millions of mobile communication devices, each base stationand mobile device having its own LO. Perfect matching of so many LOscannot possibly be achieved for all operating conditions.

Although perfect LO matching is not possible, devices in a communicationsystem must be able to communicate over common channels. In a mobilecommunication system, a mobile device must receive a signal transmittedon a particular channel by a base station. As known in the art, basestation oscillators are relatively accurate and stable, whereas LOs inmobile communication devices tend to be less reliable, typically varyingfrom nominal output frequency by to ±6 kHz.

AFC arrangements are typically used to ensure that frequency offsetbetween transmitter and receiver LOs is compensated. If frequency offsetreaches a certain level, for example ±1 kHz in typical receivers, thereceiver ceases operation. For frequency offsets above this certainlevel, which will be different for different communication systems anddevices, a receiver will be unable to detect the transmitted signal.

The goal of known AFC arrangements is to quickly estimate and adjust forfrequency offset. Ideally, the receiver AFC 134 calculates an exactoffset and then maintains the resultant AFC signal. The receiver LO 132then generates a substantially constant output, corrected for thefrequency offset. In actual receivers however, ideal AFC operation israrely if ever achieved. AFC arrangements continuously estimatefrequency offset and update AFC signals as frequency offset estimateschange, which results in changes in receiver LO output frequency. Ifaccurate offset estimates were easily generated, then near-idealoperation could be achieved by conventional AFC arrangements.

Frequency offsets are in reality very difficult to accurately estimate.This is one reason why conventional AFC is typically a continuousoperation and implemented as a closed loop control system. Even ifactual frequency offset is relatively constant, closed loop AFC will notimmediately settle on an accurate offset estimate and correction. Theestimate and resultant correction will tend to overshoot and undershootthe actual offset and required correction during a gradual settlingprocess. Since the actual frequency offset is seldom constant,particularly in mobile communication systems, this settling can beongoing for the duration of a signal reception operation. The overalleffect is that conventional AFC arrangements tend to estimate andcorrect for frequency offset within a certain range, typically on theorder of several hundred Hz, of actual frequency offset. The inherentovershoot and undershoot of actual frequency offset during the settlingprocess also causes variations in the frequencies offrequency-controlled signals and processed signals that are dependent onsuch frequency-controlled signals. These frequency variations may alsocause problems for certain receiver components.

If other receiver components such as the detector 128 in receiver 90 cantolerate such frequency offsets and variations, then conventional AFCarrangements are sufficient. However, some detectors are more sensitiveto frequency offset, such that instead of the above example 1 kHz,offsets of only up to 200 Hz are acceptable. For example, detectorsdesigned for soft decision processing tend to be more sensitive tofrequency offset, but may offer better receiver performance than a lesssensitive hard decision-based detector. Soft decision signal processingalso tends to be sensitive to frequency variations caused byconventional AFC.

Another problem associated with some types of conventional AFC is thatthe typical closed loop arrangement shown in FIG. 5 can be thrown off bylong strings of ‘1’ or ‘0’ bits. In an existing AFC arrangement used inknown frequency modulation (FM) communication systems, AFC 134 operatesto maintain the average frequency of the received signal at 0 Hz. If along string of 1's or 0's is received, the average frequency of thereceived signal is no longer 0 Hz, but AFC 134 continues to operate asthough the average frequency should be 0 Hz and therefore incorrectlyestimates the frequency offset. This data dependency degrades receiverperformance, as the correction applied by the AFC arrangement is notalways based on an accurate offset estimate.

A simple solution to the above problems would be to slow the AFCresponse. A slower AFC arrangement would tend to exhibit less pronouncedovershoot and undershoot on offset estimation. Slowing the AFC wouldalso reduce data dependency of offset estimation. Although possible,practical implementation of this solution would be at the considerablecost of increasing wait times. A slower AFC arrangement would requiremore time to correct for larger frequency offsets and result inincreased delay time before a signal can be reliably received on aparticular channel. The increased wait times not only inconvenienceusers of communication devices, but also increase power consumption of adevice. In mobile communication systems, increased wait times can beespecially problematic, particularly when a mobile receiver frequentlycrosses between service areas of different base stations, requiringfrequency offset correction for each new channel assigned by eachdifferent base station. Furthermore, increased receiver powerconsumption decreases battery life for mobile and other battery-powereddevices. Even in applications for which a stable power source is readilyavailable, limiting of power consumption is normally desirable, forexample to reduce heat dissipation. For these reasons, slowing the AFCresponse time is not feasible.

Referring now to FIG. 6, a block diagram of a component of a receiverimplementing a system according to an aspect of the present invention isshown generally as 150. A receiver utilizing component 150 differs fromknown receiver 90 in that DSP 152 comprises a foreground processingsection 154 and a background processing section 156. Sections 154 and156 are connected via FIFO buffer 158. FIFO buffer 158 serves todecouple foreground processing section 154 from background processingsection 156 due to real time processing constraints. As one skilled inthe art will recognize, a FIFO buffer is only one form of buffer thatmay serve to store data from foreground processing section 154 tobackground processing section 156. It is not the intent of the inventorsto limit buffer 158 to a FIFO implementation. In addition, it should beapparent that the FIFO need not necessarily be provided on the samecomputer chip as the DSP 152. The FIFO or other buffer may be providedelsewhere in a receiver provided that it is accessible to the foregroundand background processing sections 154 and 156.

Foreground processing section 154 processes a signal in real time withlow latency. Background processing section 156 provides for more time inanalyzing frequency offset and providing the appropriate corrections.

To aid the reader in understanding the signals shown in FIG. 6, weprovide the following Table 1 as a reference.

TABLE 1 FIG. 6 Signal Feature Label Description 164 f₁ Mixer inputsignal having frequency = f₁. 178 f₂ First reference signal used totranslate the mixer input signal into the I, Q domain, subject tofrequency control values. Frequency = f₂ 166 The signal resulting fromthe mixing of signals 164 and 178, having frequency components at f₁ +f₂ and f₁ − f₂. 170 f₁ − f₂ Low pass filtered and digitized form ofsignal 166, comprising a digitized sample stream of the f₁ − f₂component of signal 166. 200 f₃ The second reference signal, output fromoscillator 198, based on a frequency control value equal to the sum offrequency control values f_(c2), f_(c3) and f_(c4). 204 The signalresulting from the mixing of signals 170 and 200. 174 f_(b) An LO signalto which frequency control is applied via the mixer 176 to generate thereference signal 178. 168 f_(c1) First frequency control signal from AFCunit 162. 190 f_(c2) Second frequency control signal, from AFC unit 178,the inverse of control signal 168. 192 f_(c3) Third frequency controlsignal, from frame sync detector 182 when a frame sync signal has beendetected. 194 f_(c4) Fourth frequency control signal, provided by DDAFCunit 188.

Foreground processing section 154 comprises receiver low pass filter(LPF) and ADC unit 160 and foreground AFC unit 162. LPF/ADC unit 160 mayinclude such components as 104, 106, 108 and 110 of FIG. 5. LPF 160 mayalso include a filter such as channel filter 116 of FIG. 5, appliedafter I, Q analog to digital conversion. It should be obvious to thoseskilled in the art that although the LPF/ADC unit 160 is shown in FIG. 6as a component of the DSP 152, any analog components of this unit wouldbe provided outside of the DSP 152.

Foreground processing section 154 accepts an input signal 166, andprovides an output signal 170. Foreground processing section 154operates in a continuous loop. The loop begins with input signal 164.The input signal 164 may be an output signal from receiver front-endcomponents such as 36, 92, 94, 96 and 98 shown in FIG. 5. Input signal164 and first reference signal 178 are input to mixer 180, which may forexample be embodied as a quadrature mixer 102 (FIG. 5) to produce inputsignal 166 for LPF/ADC unit 160. The output of LPF/ADC unit 160 is adigitized I, Q sample stream 170 that is analyzed by foreground AFC 162and also passed to background processing section 156 via FIFO buffer158. Foreground AFC 162 accepts as input, the sample stream 170 fromLPF/ADC 160 and converts sample stream 170 to instantaneous frequencyoffset estimates. This is may be achieved by using any standard AFCalgorithm. Averaging and additional low pass filtering may also beapplied to the frequency offset estimates to produce a frequency controlsignal f_(c1) 168 required to correct the estimated offset. Firstfrequency control signal f_(c1) 168 is then passed to local oscillator(LO) 171 to control the frequency of the output of the oscillator 171,which output is then input to the mixer 176. Those skilled in the artwill appreciate that oscillator 171 is normally an analog component,such that a DAC (not shown in FIG. 6) may be provided to convert thedigital frequency control signal f_(c1) output by the AFC unit 162 intoan analog frequency control signal, as shown in FIG. 5 and describedabove. Mixer 176 also accepts as input the signal 174 provided byoscillator 172 to generate the first reference signal 178. Signal 178has a frequency of local oscillator 172 modified by the frequency of theoutput signal of oscillator 171, which is controlled by the firstfrequency control signal 168 from the AFC unit 162. Mixer 180 combinessignals 178 and 164 to create input signal 166 to LPF 160.

Mixers such as 176 produce an output signal having frequency componentsat frequencies equal to both the difference and the sum of thefrequencies of its inputs. In many implementations, only one of thesecomponents is of interest, while the other is filtered out of an outputsignal using an LPF or high pass filter (HPF). Such a filter (not shown)may be coupled to the output of the mixer 176 to filter out any unwantedsignal components from the signal 178. The oscillators 171 and 172 andmixer 176, as well as an output signal filter, may be part of a localoscillator and frequency synthesis system in a receiver. In the exampleimplementation shown in FIG. 6, the high frequency component of thesignal 166, having a frequency of f₁+f₂, is filtered out by the LPF/ADCunit 160.

Foreground processing section 154 attempts to bring the frequency f₂ ofthe signal 178 from mixer 176 as close as possible to the frequency f₁of input signal 164 as quickly as possible, by controlling the localoscillator 171.

Thus, one may view the LPF/ADC unit 160, foreground AFC unit 162, localoscillator 171, oscillator 172, mixer 176 and mixer 180 as comprising aforeground AFC loop.

Note that the value of signal 178 varies according to the value offrequency control signal 168. The value of frequency control signal 168is time varying due to the input noise passed to foreground AFC 162 andthe data dependent nature of the frequency offset calculations performedby foreground AFC 162. The amount of input noise passed by foregroundAFC 162 is inversely proportional to its speed of operation.

Background processing section 156 comprises frame sync detector 182,background AFC 184, Receiver Detector (DET) 186 and Decision-DirectedAFC (DDAFC) 188. The goal of background processing section 156 is toremove the effects of frequency control applied to the original signal164. This is achieved by combining frequency control signals provided byframe sync detector 182, background AFC 184 and DDAFC 188 to createsignal 204 which is passed to DET 186. DET 186 is preferably a softdecision detector block that converts input I, Q samples to soft symbolvalues on the output 187 to be used by later receiver stages to decodeand otherwise further process sent information. Further receiverprocessing operations may include for example descrambling,deinterleaving, decryption, error checking, error correction, and anyprocessing of the actual data in a received signal by a microprocessoror software application in a communication device, as described above.

As also described above, soft decision detectors and possibly otherreceiver components downstream in a receiver signal path from theforeground AFC loop may be sensitive to signal frequency variationsinherent in AFC schemes. Frequency offset estimate errors may be causedby the speed and data dependency of an AFC algorithm, possibly resultingin frequency variations in the signal 170 beyond levels within which thedetector 186 is operable. In FIG. 6, the frequency control signal 168changes the frequency of the output signal from oscillator 171, whichaffects the frequency of the reference signal 178, which in turn affectsthe signals 166 and thus 170. The background processing section 156, byinverting the AFC of the foreground processing section, provides asignal 204 at its output having a more stable frequency. Fast foregroundAFC can thereby be used without affecting other receiver components thatare sensitive to offset estimation errors and frequency variations.

Background processing section 156 accepts as input signal 170 which isstored in FIFO buffer 158. Signal 170 is buffered so that backgroundprocessing section 156 may extract data as required. Signal 170 ispassed to frame sync detector 182 and background AFC 184.

Background processing section 156 has two modes that follow signal 170provided by FIFO buffer 158, namely unsynchronized and synchronized. Inunsynchronized mode, frame sync detector 182 is active and searches fora frame sync signal. When a frame sync signal is detected, the modeswitches to synchronized. Frame sync detector 182 then outputs thirdfrequency control signal f_(c3) 192 when a frame sync signal isdetected. Since a frame sync signal has a known pattern, a frequencyoffset estimate based on a frame sync signal is a typically a betterquality estimate than can be determined by an AFC unit such as 162 or184, such that the associated frequency control signal f_(c3) providesfor more effective control of the oscillator 198 to correct for actualfrequency offset. In synchronized mode, the frequency control signal 192is combined with the second frequency control signal f_(c2) 190 togenerate a control signal for the oscillator 198 and thereby control theoutput signal 204, as described in further detail below.

In a preferred embodiment, background AFC 184 utilizes the same AFCalgorithm as that of foreground AFC 162 to determine a second frequencycontrol signal f_(c2) 190. Thus, background AFC 184 may operateindependently from foreground AFC 162. The second frequency controlsignal f_(c2) 190 is preferably the inverse of frequency control 168. Itis contemplated that, for example, the foreground AFC unit 162 mayoperate whenever a receiver in which it is implemented is withincoverage of a communication network, whereas the background processingsection 156 operates only when a received communication signal containsactual data for the particular receiver, to be processed by the detector186 and possibly other receiver components.

DDAFC 188 provides a fourth frequency control signal f_(c4) 194. Controlsignal f_(c4) 194 is a slow frequency correction. DDAFC 188 attempts totrack any changes in frequency of signal 204 that occur duringsynchronized mode. These changes are typically a result of transmitterimperfections in generating the received signal. Changes in the fadingenvironment are another possible source of frequency changes duringsynchronized mode.

Control signals 190, 192 and 194 are summed at block 196. The output ofblock 196 is provided as a control input to oscillator 198, whichproduces signal 200. Mixer 202 accepts signal 200 and signal 170 tocreate signal 204 which is input to DET 186 and DDAFC 188. As describedabove, the mixer 202 will normally produce an output having frequencycomponents at frequencies corresponding to the sum and difference of thefrequencies of its inputs. Although not shown in FIG. 6, those skilledin the art will appreciate that one of the frequency components ofsignal 204 may be selected for processing by the detector 186, DDAFC 188and further receiver components by filtering out the unwanted component.For example, an LPF may be coupled to the output of mixer 202 to providethe lower frequency component of the mixed signal as the signal 204.

Referring now to FIG. 7, a timing diagram illustrating unsynchronizedmode operation of background processing section 156 is shown generallyas 210. Background processing section 156 tracks signal 170. As signal170 is tracked, background AFC 184 generates a frequency controlestimate and associated second frequency control signal 190, which iseffectively the inverse of the first frequency control signal 168provided by foreground AFC 162. When frequency control signals 190 and168 are combined, they effectively cancel each other out. Thus thesignal passed to detector 186 will be as close as possible to arepresentation of the original signal 164.

Referring now to FIG. 8, a timing diagram illustrating synchronized modeoperation of background processing section 156 is shown generally as220. As shown in FIG. 8, frame sync signals are assumed to have beenreceived at times t₁ and t₂. Prior to receiving a frame sync signal,background processing section 156 operates in unsynchronized mode (asshown in FIG. 7). At time t₁, frame sync detector 182 accuratelyestimates frequency offset Δ1 based on the received frame sync signaland the third frequency control signal 192 required to correct theoffset Δ1 is then generated. At time t₂, a second frame sync signal isdetected by frame sync detector 182 which results in the generation of anew offset estimate and corresponding third frequency control signal192. The value of this new control signal 192 is sufficient to correctfor the new offset estimate shown as Δ2 in FIG. 8.

FIGS. 7 and 8 are conceptual representations only. The values of thesecond frequency control signal 190 would not necessarily be exactinverses of first frequency control signal 168 values, as background AFC184 may operate at a different frequency than foreground AFC 162.Therefore, a frequency offset correction effected with a particularfirst frequency control signal value in the foreground AFC unit 162 maycorrespond to a different offset amount that could be inverted using adifferent second frequency control signal value in the background AFCunit 184. In such a case, the actual values of the frequency controlsignals 168 and 190 would be different, but the overall effect,inverting foreground AFC, would be the same. In FIG. 6 for example, theoscillator 171 is normally implemented as an analog oscillator, whereasthe oscillator 198, part of the DSP 12, is a digital oscillator. Aparticular value of the second frequency control signal f_(c2) may berequired to invert, at the oscillator 198 and mixer 202, a frequencyoffset correction applied at the oscillator 171, mixer 178 and mixer 180using a different value of the first frequency control signal f_(c1).Different frequency control signal values might also be required forexample when the foreground and background AFC units 162 and 184, or theoscillators 171 and 198 which they respectively control, operate atdifferent frequencies.

Referring now to FIG. 9, a flowchart of the foreground processingsection process, is shown generally as 250. We suggest referring to FIG.6 with FIG. 9 to best understand process 250. Any feature numbersmentioned below but not shown in FIG. 9 will be found in FIG. 6.

Process 250 begins at step 252 where a test is made to determine ifsignal 164 is available for processing. If no signal 164 is available,such as when a receiver is outside communication network coverage,process 250 ends at step 264. If signal 164 is available, process 250moves to step 254. At step 254, signal 178 is mixed with the inputsignal 164 to create signal 166.

Moving next to step 256, signal 166 is processed by LPF/ADC 160 tocreate signal 170. Signal 170 is passed to FIFO buffer 158 at transferpoint 262. Signal 170 is also passed by step 256 to step 258. At step258, frequency control signal 168 is calculated by foreground AFC 162.

Moving next to step 260, frequency control signal 168 is input to theoscillator 171 to control the output thereof, and signal 174 fromoscillator 172 and the output signal from the oscillator 171 are mixedto create an updated signal 178. Process 250 then returns to step 252 todetermine if input signal 164 is still available for processing. As oneskilled in the art will recognize, step 252 monitors for input signal164 and will initiate process 250 upon receipt of signal 164.

Referring now to FIG. 10, a flowchart of the background processingsection process is shown generally as 280. To aid in understanding thefollowing description, please refer to FIG. 6 in conjunction with FIG.10. Process 280 begins at transfer point 262 where signal 170 isextracted from FIFO buffer 158. Moving to step 282, signal 170 isanalyzed by frame sync detector 182 to determine if a frame sync hasoccurred. If no frame sync has been detected, processing moves to step286. If a frame sync has been detected, processing moves to step 284where an accurate offset estimate and corresponding frequency controlsignal 192 are calculated.

At step 286, frequency control signal 190 is generated by background AFC184. Frequency control signal 190 inverts the effects of frequencycontrol signal 168 generated by foreground AFC 162. Process 280 nextmoves to step 288 where DDAFC 188 generates frequency control signal 194but only if background processing section 156 is operating insynchronized mode. Moving now to step 290, frequency control signals190, 192 and 194 are combined and provided as a control input to theoscillator 198 to control the frequency of the signal 200. As discussed,signals 192 and 194 will only be present if background processingsection 156 is operating in synchronized mode. In step 290, signal 170is mixed with signal 200 to create signal 204 for input to DET 186. Atstep 292, signal 204 is processed by DET 186. At step 294 a test is madeto determine if any more data exists in FIFO buffer 158. If data exists,processing returns to step 282. If no more data remains process 280 endsat step 296. As described above, processed data output by the detector186 may be passed to other receiver components for further processing.

Although a particular architecture of receiver 150 has been illustratedin FIG. 6 and described herein, it is not the intent of the inventors torestrict the invention to the example provided. Many variants may exist,for example foreground AFC 162 may pass frequency control signals 168via the FIFO buffer, thus eliminating the need for background AFC 184.Similarly, one or both of frame sync detector 192 or DDAFC 194 may bepresent in the foreground processing section 154 and provide theircontrol signals to background processing section 156. It may also bepossible to implement the controlled oscillator 171 and oscillator 172as a single controlled oscillator. As can be appreciated by one skilledin the art, the design of receiver 150 is subject to a wide variety ofdesign decisions.

Although described in the context of a particular receiver architecture,the foreground and background AFC control techniques described above maybe applied to virtually any wireless communications device in which AFCis required or desired in conjunction with frequency offset- andfrequency variation-sensitive components such as soft informationprocessing modules.

The inventors do not intend to restrict the utilization of the presentinvention to a specific system. By way of example, the present inventionmay be utilized in mobile communication systems, hand-held communicationdevices, personal digital assistants (PDAs) with communicationfunctions, wireless modems, cellular phones and one-way or two-waypagers. In essence, any device that receives RF signals affected byfrequency offset.

The invention has been described with reference to certain specificembodiments. However, various modifications thereof will be apparent tothose skilled in the art without departing from the spirit and scope ofthe invention as outlined in the claims appended hereto.

1. A method for processing a input signal, comprising: a foregroundprocess including: a) terminating the process if an input signal is notavailable; b) processing the input signal using a first reference signalto generate an output; c) generating a first frequency control signalfrom the output; and d) controlling a frequency of the first referencesignal based on the first frequency control signal; and a backgroundprocess including: a) receiving a foreground processed signal from theforeground process; b) processing the foreground processed signal usinga second reference signal; c) generating a second frequency controlsignal from the foreground processed signal; and d) controlling afrequency of the second reference signal based on the second frequencycontrol signal so that background step b removes the effects offoreground step d.
 2. The method of claim 1, wherein the signal fromforeground step b is temporarily stored, and background step a includesreading the temporarily stored signal.
 3. The method of claim 1, whereinforeground step b comprises: b1) mixing the input signal with the firstreference signal; and b2) low-pass filtering the resultant signal fromstep b1.
 4. The method of claim 1, further comprising the steps of: c1)testing the foreground processed signal to determine if a framesynchronization signal has occurred; and c2) if a frame synchronizationsignal has occurred, then calculating a third frequency control signal;wherein step d) of the background process comprises controlling thefrequency of the second reference signal based on both the second andthe third frequency control signals.
 5. The method of claim 1, whereinthe foreground process is repeated as long as an input communicationsignal is available.
 6. The method of claim 1, wherein step b of thebackground process comprises the step mixing the foreground processedsignal with the second reference signal.
 7. A method for processing asignal, comprising: generating a first frequency control signal that isused to control a frequency of a first reference signal; processing areceived signal using the first reference signal to generate an outputsignal; generating a second frequency control signal that is used tocontrol a frequency of a second reference signal; and processing theoutput signal of the foreground processor using the second referencesignal; the first frequency control signal being an inverse of thesecond frequency control signal.
 8. The method of claim 7 furthercomprising: controlling the frequency of the second reference signalbased on the sum of the first and second frequency control signals.
 9. Amethod comprising: mixing a first reference signal with a receivedsignal to output an input signal; converting the input signal to afiltered output; generating a first frequency control signal from thefiltered output; generating a first oscillator output with a frequencybased on the first frequency control signal; mixing the first oscillatoroutput with a second oscillator output to generate the first referencesignal; temporarily storing the filtered output; generating a secondfrequency control signal from the filtered output; and generating athird oscillator signal based on the second frequency control signal.10. The method of claim 9, wherein the generating of the secondfrequency control signal is through the same AFC algorithm as thegenerating of the first frequency control signal.
 11. The method ofclaim 9, wherein the second frequency control signal is approximatelythe inverse of the first frequency control signal.
 12. The method ofclaim 9 further comprising: receiving the filtered output to generate athird frequency control signal, wherein the generating of the thirdoscillator signal is based on both the second frequency control signaland the third frequency control signal.